# -*- coding: utf-8 -*-

"""
Nome do modulo: leitura.py
Autor: Soraia Janeiro
Data: 15/11/2013
Obs: leitura do ficheiro xls.
"""

import xlrd

class Leitura():
	'''
	A classe lê um ficheiro .xls
	'''
	
	def ler_ficheiro(self, ficheiro):
		'''
		A função recebe o ficheiro como parametro, e efectua a leitura. 
		Cada linha é adicionada à lista. 
		'''
		
		# Abre o ficheiro
		xls = xlrd.open_workbook(ficheiro)
    
		# Acede à primeira folha do ficheiro
		pagina_dados = xls.sheets()[0]
    
		codigo_instituicao = ""
		codigo_curso = ""
		nome_instituicao = ""
		nome_curso = ""
		grau = ""
		vagas_iniciais = ""
		colocados = ""
		nota_ultimo_candidato = ""
		vagas_sobrantes = ""
    
		dados = []
    
		# Percorre o todas as linhas da folha
		for linha in range(3, 1090):
				
			xlinha = []
			
			if pagina_dados.cell(linha, 0).value != "":
				codigo_instituicao = pagina_dados.cell(linha, 0).value.encode('utf-8')
			xlinha.append(codigo_instituicao)
		
			if  pagina_dados.cell(linha, 1).value != "":

				codigo_curso = pagina_dados.cell(linha, 1).value.encode('utf-8')
			xlinha.append(codigo_curso)
		
			if  pagina_dados.cell(linha, 2).value != "":
				nome_instituicao = pagina_dados.cell(linha, 2).value.encode('utf-8')
			xlinha.append(nome_instituicao)
		
			if  pagina_dados.cell(linha, 3).value != "":
				nome_curso = pagina_dados.cell(linha, 3).value.encode('utf-8')
			xlinha.append(nome_curso)
		
			if  pagina_dados.cell(linha, 4).value != "":
				grau = pagina_dados.cell(linha, 4).value.encode('utf-8')
			xlinha.append(grau)
			
			xlinha.append(pagina_dados.cell(linha, 5).value)
		
			xlinha.append(pagina_dados.cell(linha, 6).value)
	
			if  pagina_dados.cell(linha, 7).value == "":
				nota_ultimo_candidato = "0"
				xlinha.append(nota_ultimo_candidato)
			else:
				xlinha.append(pagina_dados.cell(linha, 7).value)
		
			xlinha.append(pagina_dados.cell(linha, 8).value)
			
			dados.append(xlinha)
			pass
		return dados

